gdk_surface_schedule_update (surface);
}
}
-}
-
-void
-gdk_surface_freeze_toplevel_updates (GdkSurface *surface)
-{
- g_return_if_fail (GDK_IS_SURFACE (surface));
-
- surface->update_and_descendants_freeze_count++;
- gdk_surface_freeze_updates (surface);
-}
-
-void
-gdk_surface_thaw_toplevel_updates (GdkSurface *surface)
-{
- g_return_if_fail (GDK_IS_SURFACE (surface));
- g_return_if_fail (surface->update_and_descendants_freeze_count > 0);
-
- surface->update_and_descendants_freeze_count--;
- gdk_surface_schedule_update (surface);
- gdk_surface_thaw_updates (surface);
}
guint32 initial_timestamp;
- guint16 configure_request_count;
-
guint mnemonics_display_timeout_id;
guint focus_visible_timeout;
priv->geometry_info = NULL;
priv->focus_widget = NULL;
priv->default_widget = NULL;
- priv->configure_request_count = 0;
priv->resizable = TRUE;
priv->configure_notify_received = FALSE;
priv->need_default_size = TRUE;
GTK_WIDGET_CLASS (gtk_window_parent_class)->unmap (widget);
gdk_surface_hide (priv->surface);
- while (priv->configure_request_count > 0)
- {
- priv->configure_request_count--;
- gdk_surface_thaw_toplevel_updates (priv->surface);
- }
priv->configure_notify_received = FALSE;
state = gdk_toplevel_get_state (GDK_TOPLEVEL (priv->surface));
info->last.configure_request.height = height;
}
- /* priv->configure_request_count incremented for each
- * configure request, and decremented to a min of 0 for
- * each configure notify.
- *
- * All it means is that we know we will get at least
- * priv->configure_request_count more configure notifies.
- * We could get more configure notifies than that; some
- * of the configure notifies we get may be unrelated to
- * the configure requests. But we will get at least
- * priv->configure_request_count notifies.
- */
-
- if (priv->configure_request_count > 0)
- {
- priv->configure_request_count -= 1;
-
- gdk_surface_thaw_toplevel_updates (priv->surface);
- }
-
/*
* If we do need to resize, we do that by:
* - setting configure_notify_received to TRUE
"resize: \t%d x %d\n"
"size_changed: %d pos_changed: %d hints_changed: %d\n"
"configure_notify_received: %d\n"
- "configure_request_count: %d\n"
"position_constraints_changed: %d",
priv->title ? priv->title : "(no title)",
info->last.configure_request.x,
configure_request_pos_changed,
hints_changed,
priv->configure_notify_received,
- priv->configure_request_count,
info->position_constraints_changed);
}
#endif
* we don't get the ConfigureNotify back, the resize queue will never be run.
*/
- /* Increment the number of have-not-yet-received-notify requests.
- * This is done before gdk_surface[_move]_resize(), because
- * that call might be synchronous (depending on which GDK backend
- * is being used), so any preparations for its effects must
- * be done beforehand.
- */
- priv->configure_request_count += 1;
-
- gdk_surface_freeze_toplevel_updates (priv->surface);
-
/* for GTK_RESIZE_QUEUE toplevels, we are now awaiting a new
* configure event in response to our resizing request.
* the configure event will cause a new resize with